package rentalCompany;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.Collection;
import java.util.List;

public interface CarRentalCompanyRemote extends Remote
{
	public Collection<CarType> getAllCarTypes() throws RemoteException;
	public CarType getCarType(String carTypeName) throws RemoteException;
	public Quote createQuote(ReservationConstraints constraints, String client) throws ReservationException, RemoteException;
	public Reservation confirmQuote(Quote quote) throws ReservationException, RemoteException;
	public int getNumberOfReservationsForCarType(String cartype) throws RemoteException;
	public List<Reservation> getReservationsBy(String clientName) throws RemoteException;
        public void cancelReservation(Reservation res) throws RemoteException;
}
